#ifndef __02095A11_1172_4755_ACF0_BC9E367FB545__
#define __02095A11_1172_4755_ACF0_BC9E367FB545__

#include "../import/head.h"

namespace xos_sgsj
{
    class data;
    class tcp;

    class net_tcp
    {
    public:
        net_tcp();
        ~net_tcp();

    public:
        int on_tcp_init( xos::i_msg * pMsg );
        int on_tcp_accept( xos::i_msg * pMsg );
        int on_tcp_connect( xos::i_msg * pMsg );
        int on_tcp_recv( xos::i_msg * pMsg );
        int on_tcp_send( xos::i_msg * pMsg );
        int on_tcp_close( xos::i_msg * pMsg );
        
    public:
        int tcp_init( tcp * pTcp );
        int tcp_post_accept( tcp * pTcp );
        int tcp_post_connect( tcp * pTcp );
        int tcp_post_recv( tcp * pTcp );
        int tcp_post_send( data * pData );
        int tcp_post_close( tcp * pTcp );
        int tcp_close_test( tcp * pTcp );

        int proc( xos::i_msg * pMsg );

    };

} // xos_sgsj

#endif // __02095A11_1172_4755_ACF0_BC9E367FB545__
